package com.codejoys.monitor.service;

import com.codejoys.monitor.domain.Device;
import com.codejoys.monitor.domain.DeviceData;
import com.codejoys.monitor.dto.ConfigDto;
import com.codejoys.monitor.dto.DeviceDto;
import com.codejoys.monitor.dto.PageData;

import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Date;
import java.util.List;

public interface DeviceService {
    ConfigDto findBySn(String sn);
    Device findByChannel(String channel);
    PageData<DeviceDto> findList(DeviceDto device, Integer page, Integer size);

    /**
     * 设备实时状态
     * @param house - 老化房（A01， A02等等）
     * @return
     */
    List<DeviceDto> statusList(String house);

    /**
     *
     * @param house 老化房
     * @return
     */
    List<DeviceDto> getDeviceStatus(String house);
    void updateById(Device device);

    void deleteById(Integer id, Integer userId);

    void insert(List<DeviceDto> devices, Integer userId);

    List<DeviceData> getDeviceLogs(Integer deviceId, Date start);

    List<DeviceDto> findList(DeviceDto device);
}
